package com.haoze.nurseapp.message;

import com.gexin.rp.sdk.base.IPushResult;
import com.gexin.rp.sdk.base.impl.AppMessage;
import com.gexin.rp.sdk.base.impl.SingleMessage;
import com.gexin.rp.sdk.base.impl.Target;
import com.gexin.rp.sdk.base.notify.Notify;
import com.gexin.rp.sdk.dto.GtReq;
import com.gexin.rp.sdk.http.IGtPush;
import com.gexin.rp.sdk.template.TransmissionTemplate;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.List;

@Component
public class AppPush {
//    // STEP1：获取应用基本信息
//    private static String appId = "McqfpPXmdZA49PTUGa2xy9";
//    private static String appKey = "mnneRkpfdz8XjLPbHq2BR5";
//    private static String masterSecret = "SZPj5JZOl29Sk8aylqMGy3";
//    private static String url = "http://sdk.open.api.igexin.com/apiex.htm";
//    private static IGtPush push = new IGtPush(url, appKey, masterSecret);
//
//    private static TransmissionTemplate publicTemp(String title, String text){
//        // STEP4：选择通知模板
//        TransmissionTemplate template = new TransmissionTemplate();
//        template.setAppId(appId);
//        template.setAppkey(appKey);
//        return template;
//    }
//
//    public static void pushMessage(String title, String text) {
//        // STEP5：定义"AppMessage"类型消息对象,设置推送消息有效期等推送参数
//        List<String> appIds = new ArrayList<String>();
//        appIds.add(appId);
//        AppMessage message = new AppMessage();
//        message.setData(publicTemp(title, text));
//        message.setAppIdList(appIds);
//        message.setOffline(true);
//        message.setOfflineExpireTime(1000 * 600);  // 时间单位为毫秒
//
//        // STEP6：执行推送
//        IPushResult ret = push.pushMessageToApp(message);
//        System.out.println(ret.getResponse().toString());
//    }
//
//    public static void pushUser(String clientId, String title, String message) {
//        // STEP5：定义"AppMessage"类型消息对象,设置推送消息有效期等推送参数
//        SingleMessage singleMessage = new SingleMessage();
//        TransmissionTemplate template = publicTemp(title, message);
//        template.setAppId(appId);
//        template.setAppkey(appKey);
//        template.setTransmissionType(2);
//        Notify notify = new Notify();
//        notify.setTitle(title);
//        notify.setContent(message);
//        notify.setIntent("intent:#Intent;action=android.intent.action.oppopush;launchFlags=0x14000000;component=io.dcloud.nurseapp/io.dcloud.PandoraEntry;S.UP-OL-SU=true;S.title="+title+";S.content="+message+";end");
//        notify.setType(GtReq.NotifyInfo.Type._intent);
//        template.set3rdNotifyInfo(notify);//设置第三方通知
//        template.setTransmissionContent(message);
//        singleMessage.setData(template);
//        singleMessage.setOffline(true);
//        singleMessage.setOfflineExpireTime(1000 * 600);  // 时间单位为毫秒
//
//        //STEP6：设置推送到的人
//        Target target = new Target();
//        target.setAppId(appId);
//        target.setClientId(clientId);
//
//        // STEP6：执行推送
//        IPushResult ret = push.pushMessageToSingle(singleMessage,target);
//        System.out.println(ret.getResponse().toString());
//    }
}
